package fi.uba.algocontrol.model;

import fi.uba.algocontrol.model.aviones.Avion;
import fi.uba.algocontrol.model.aviones.Aviones;
import fi.uba.algocontrol.model.pistas.Pista;
import fi.uba.algocontrol.model.pistas.Pistas;

public class Mapa
{
    Aviones aviones = null;
    Pistas pistas = null;

    public Mapa()
    {
        this.aviones = new Aviones();
        this.pistas = new Pistas();
    }

    public void agregar(Avion avion)
    {
        this.aviones.add(avion);
    }

    public void remover(Avion avion)
    {
        this.aviones.remove(avion);
    }

    public void agregar(Pista pista)
    {
        this.pistas.add(pista);
    }

    public void remover(Pista pista)
    {
        this.pistas.remove(pista);
    }

    public Aviones getAviones()
    {
        return this.aviones;
    }

    public static int getAncho()
    {
        return 800;
    }

    public static int getAlto()
    {
        return 600;
    }
    
    public Pistas getPistas()
    {
        return this.pistas;
    }
    
	public boolean estanCerca(Pista pista, Avion avion){
		
		Vector centroPista = new Vector( pista.getX() + pista.getAncho() / 2, pista.getY() - pista.getAlto() / 2 );
		 return ( avion.getPosicion().substract(centroPista).getNorma() < avion.getRadioSprite().getAncho() );
		
	}

}
